Traditional communication systems address certain reliability and performance issues that arise during the transfer of information from a sender to a receiver through a medium. In an idealized situation, no errors are introduced as the information travels through the medium. As a result, the receiver obtains, with 100% fidelity, a message identical to the one transmitted into the medium by the sender.
In actual practice however, the medium is not error free. Environmental factors typically contribute haphazard information in the medium. This haphazard information is commonly referred to as “noise”. This noise can result from, for example, shot noise, neighboring radio frequencies, undesirable voltage and/or current fluctuations in circuit components, signal reflections from trees/buildings, solar flares, etc.
In information warfare, there exists a related concept of signal jamming. The idea is to increase the contribution of the noise to such an extent that it becomes practically impossible to find a set of codewords that are simultaneously robust and efficient. This type of noise is not haphazard but rather specifically crafted to render a specific medium too noisy to use. The targets of this type of purposefully crafted noise are unable to communicate.
An important purpose of traditional communication systems are to characterize a noise source and to create a set of primary codewords that are robust against that noise type. The primary codewords are designed to be efficient for communication of a wide variety of often used messages. As provided by traditional communication systems, the transmission of information through the Internet occurs over a variety of medium including cable, wireless, satellite, etc. Currently, traditional communication systems play a significant role in engineering and assuring the reliability and efficiency of those transmissions against a variety of haphazard noise sources.
Traditional communication systems have reduced the effects of haphazard noise in the communication medium as well at the sender and the receiver. For example, the sender or the receiver can include circuitry to reduce or eliminate the effects of haphazard noise. Additionally, routing devices in the medium, the sender, and the receiver can also use quality of service, data integrity, and/or error correction functions to correct for haphazard noise. These functions can be associated with, for example, network cards and associated stacks as received packets are queued and recombined into a complete data stream.
In addition to haphazard noise, there also exists engineered malicious noise specifically created to affect, alter, or otherwise interfere with communications between a sender and a receiver. This malicious noise is an injected signal that alters codewords sent between senders and receivers in a manner that is generally not correctable by existing error correction methods of traditional communication systems. The malicious noise, created by malicious applications, are directed to interfere with communications anywhere along a communication channel through the Internet from a sender to a receiver including routers, switches, repeaters, firewalls, etc.
The malicious applications are configured to identify codeword sets and provide malicious noise that effectively switches one valid codeword for a second valid codeword. Traditional error correction schemes cannot detect this switch because they have no way of identifying that an error has occurred. The resulting altered signal is a viewed as a valid codeword from the point of view of the traditional communication system. Other types of noise that commonly occur in information warfare are also deliberate and engineered (e.g. signal jamming) but the phenomena does not result in a useable codeword set.
Unlike environmentally derived haphazard noise, this malicious noise does not consist of haphazard content, nor does it disallow effective communication as a jamming signal might. Instead, this noise is specifically crafted to substitute the originally transmitted message for a second, specific, legitimate, and understandable message which is then presented to a receiver as authentic intent of the sender. The crafted noise may also occur before selected information leaves a sender (e.g., a server, database and/or directory structure) for transmission to a receiver. This crafted noise is referred to herein as malicious noise. The crafter of the malicious noise of referred to here in as a malicious application.
Using malicious noise, viruses and other types of malicious applications are able to direct a client device (e.g., a receiver) to perform actions that a communicatively coupled server (e.g., a sender) did not originally intend. Additionally, the viruses and malicious applications are able to direct a server to perform actions that communicatively coupled client devices did not originally intend. Conventional virus detection algorithms often fail to detect the malicious nature of the noise because these algorithms are configured to detect the presence of the noise's source rather than the noise itself. The noise generation algorithm (e.g., the code of the malicious application) is relatively easily disguised and able to assume a wide variety of formats. There is accordingly a need to validate communications between servers and client devices in the presence of malicious noise.